/**
 *  基于RESTful风格, 提供的统一api接口配置，用于向utils/request或原生axios传递请求信息
 *  提供对manager资源封装的请求对象
 */
//  manager对应的资源url
const url = '/api/managerUser'

/**
 * 获取所有的manager，基于分页查询
 * @param {Object} params 传入分页对象，对象必须有page和limit属性
 * @returns 用于request请求的对象
 */
export const managerPages = (params) => {
    return {
        url: url + '/' + params.page + '/' + params.limit,
        method: 'get',
    }
}
/**
 * 删除一个manager
 * @param {string|int} id 需要删除的对象的id
 * @returns {Object}用于request请求的对象
 */
export const deleteManager = (id) => {
    return {
        url: url + '/' + id,
        method: 'delete'
    }
}
/**
 * 通用的请求配置方式
 * @param {string} method 请求方式
 * @param {Object} data 请求数据
 * @returns 基本的用于request请求的对象
 */
function getConfig(method, data) {
    return {
        url,
        method,
        data
    }
}
/**
 * 用于添加一个manager
 * @param {Object} data manager的DTO对象
 * @returns 用于request请求的对象
 */
export const addManager = (data) => {
    return getConfig('post', data)
}
/**
 * 用于添加一个manager
 * @param {Object} data manager的DTO对象，对象中id是必须存在的
 * @returns 用于request请求的对象
 */
export const updateManager = (data) => {
    return getConfig('put', data)
}
